package com.dragon.modules.yuegou.entity.order;

import com.baomidou.mybatisplus.annotation.TableName;
import com.dragon.modules.yuegou.enums.order.OrderRefundUserType;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * 订单退款实体类<br>
 * 对应的表为：ord_order_refund<br>
 * 
 * @author pbuilder generated
 * @date 2019-04-29 10:04:21
 * @company sgy
 * @version 2.0
 */
@TableName("ord_order_refund")
@ApiModel(description = "订单退款")
public class OrderRefundEntity {

    /**  */
	protected String id;

    /**  */
	protected String orderNo;

    /** 退款备注 */
	@ApiModelProperty("退款备注")
	protected String remarks;

    /** 退款金额 */
	@ApiModelProperty("退款金额")
	protected BigDecimal amount;

    /** 退款时间 */
	@ApiModelProperty("退款时间")
	protected LocalDateTime createdTime;

    /** [枚举]用户类型：0-系统-SYSTEM、1-会员-MEMBER、2-用户-USER */
	@ApiModelProperty("[枚举]用户类型：0-系统-SYSTEM、1-会员-MEMBER、2-用户-USER")
	protected OrderRefundUserType userType;

    /**  */
	protected String createdBy;

	/**
	 * 构造一个空订单退款实体对象
	 */
	public OrderRefundEntity(){
		super();
	}

	/**
	 * 依据其它对象的信息构造一个订单退款实体对象
	 * 
	 * @param other 其它对象
	 */
	public OrderRefundEntity(OrderRefundEntity other){
		super();
     	this.id = other.id;
     	this.orderNo = other.orderNo;
     	this.remarks = other.remarks;
     	this.amount = other.amount;
     	this.createdTime = other.createdTime;
     	this.userType = other.userType;
     	this.createdBy = other.createdBy;
	}


	/**
	 * 获取
	 * 
	 * @return id 
	 */
	public String getId() {
		return id;
	}
  	
	/**
	 * 设置
	 * 
	 * @param id 
	 */
	public void setId(String id) {
		this.id = id;
	}

	/**
	 * 获取
	 * 
	 * @return orderNo 
	 */
	public String getOrderNo() {
		return orderNo;
	}
  	
	/**
	 * 设置
	 * 
	 * @param orderNo 
	 */
	public void setOrderNo(String orderNo) {
		this.orderNo = orderNo;
	}

	/**
	 * 获取退款备注
	 * 
	 * @return remarks 退款备注
	 */
	public String getRemarks() {
		return remarks;
	}
  	
	/**
	 * 设置退款备注
	 * 
	 * @param remarks 退款备注
	 */
	public void setRemarks(String remarks) {
		this.remarks = remarks;
	}

	/**
	 * 获取退款金额
	 * 
	 * @return amount 退款金额
	 */
	public BigDecimal getAmount() {
		return amount;
	}
  	
	/**
	 * 设置退款金额
	 * 
	 * @param amount 退款金额
	 */
	public void setAmount(BigDecimal amount) {
		this.amount = amount;
	}

	/**
	 * 获取退款时间
	 * 
	 * @return createdTime 退款时间
	 */
	public LocalDateTime getCreatedTime() {
		return createdTime;
	}
  	
	/**
	 * 设置退款时间
	 * 
	 * @param createdTime 退款时间
	 */
	public void setCreatedTime(LocalDateTime createdTime) {
		this.createdTime = createdTime;
	}

	/**
	 * 获取[枚举]用户类型：0-系统-SYSTEM、1-会员-MEMBER、2-用户-USER
	 * 
	 * @return userType [枚举]用户类型：0-系统-SYSTEM、1-会员-MEMBER、2-用户-USER
	 */
	public OrderRefundUserType getUserType() {
		return userType;
	}
  	
	/**
	 * 设置[枚举]用户类型：0-系统-SYSTEM、1-会员-MEMBER、2-用户-USER
	 * 
	 * @param userType [枚举]用户类型：0-系统-SYSTEM、1-会员-MEMBER、2-用户-USER
	 */
	public void setUserType(OrderRefundUserType userType) {
		this.userType = userType;
	}

	/**
	 * 获取
	 * 
	 * @return createdBy 
	 */
	public String getCreatedBy() {
		return createdBy;
	}
  	
	/**
	 * 设置
	 * 
	 * @param createdBy 
	 */
	public void setCreatedBy(String createdBy) {
		this.createdBy = createdBy;
	}

    public String toString() {
		return new StringBuilder().append("OrderRefundEntity{").
			append("id=").append(id).
			append(",orderNo=").append(orderNo).
			append(",remarks=").append(remarks).
			append(",amount=").append(amount).
			append(",createdTime=").append(createdTime).
			append(",userType=").append(userType).
			append(",createdBy=").append(createdBy).
			append('}').toString();
    }

	/**
	 * 复制对象
	 * 
	 * @return 复制后的新实体对象
	 */
	public OrderRefundEntity copy() {
		return new OrderRefundEntity(this);
	}

    /**  */
	public static final String COL_ID = "id";

    /**  */
	public static final String COL_ORDER_NO = "order_no";

    /** 退款备注 */
	public static final String COL_REMARKS = "remarks";

    /** 退款金额 */
	public static final String COL_AMOUNT = "amount";

    /** 退款时间 */
	public static final String COL_CREATED_TIME = "created_time";

    /** [枚举]用户类型：0-系统-SYSTEM、1-会员-MEMBER、2-用户-USER */
	public static final String COL_USER_TYPE = "user_type";

    /**  */
	public static final String COL_CREATED_BY = "created_by";
}
